
#include <Inventor/Win/SoWin.h>
#include <Inventor/Win/SoWinRenderArea.h>
#include <Inventor/nodes/SoCone.h>
#include <Inventor/nodes/SoDirectionalLight.h>
#include <Inventor/nodes/SoMaterial.h>
#include <Inventor/nodes/SoPerspectiveCamera.h>
#include <Inventor/nodes/SoSeparator.h>

#include <tchar.h>

#include "CppUnitTest.h"

using namespace Microsoft::VisualStudio::CppUnitTestFramework;

namespace UnitTests
{
	TEST_CLASS(SbNumTests)
	{
	public:
		
		TEST_METHOD(TestSbNumSize)
		{
      Assert::IsTrue(SbRealf::size() == 4u);
      Assert::IsTrue(SbReald::size() == 8u);
    }

		TEST_METHOD(TestSbNumInitThat)


//int _tmain(int argc, _TCHAR* argv[])
//{
	// Initialize Inventor. This returns a main window to use.
	// If unsuccessful, exit.
  HWND myWindow = SoWin::init(""); // pass the app name
	if (myWindow == nullptr) exit(1);

	// Make a scene containing a red cone
	SoSeparator *root = new SoSeparator;
	SoPerspectiveCamera *myCamera = new SoPerspectiveCamera;
	SoMaterial *myMaterial = new SoMaterial;
	root->ref();
	root->addChild(myCamera);
	root->addChild(new SoDirectionalLight);
	myMaterial->diffuseColor.setValue(1.0, 0.0, 0.0);   // Red
	root->addChild(myMaterial);
	root->addChild(new SoCone);

	// Create a renderArea in which to see our scene graph.
	// The render area will appear within the main window.
	SoWinRenderArea *myRenderArea = new SoWinRenderArea(myWindow);

	// Make myCamera see everything.
	myCamera->viewAll(root, myRenderArea->getViewportRegion());

	// Put our scene in myRenderArea, change the title
	myRenderArea->setSceneGraph(root);
	myRenderArea->setTitle("Hello Cone");
	myRenderArea->show();

	SoWin::show(myWindow);  // Display main window
	SoWin::mainLoop();      // Main Inventor event loop
}